/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package org.apli.haiam.ejb.entidades;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

/**
 *
 * @author Informática
 */
@Entity
@Table(name = "far_ajustes")
@NamedQueries({
    @NamedQuery(name = "FarAjustes.findAll", query = "SELECT f FROM FarAjustes f")})
public class FarAjustes implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Basic(optional = false)
    @NotNull
    @Column(name = "faj_id")
    private Integer fajId;
    @Basic(optional = false)
    @NotNull
    @Column(name = "faj_fecha_solicitud")
    @Temporal(TemporalType.DATE)
    private Date fajFechaSolicitud;
    @Basic(optional = false)
    @NotNull
    @Column(name = "faj_hora_solicitud")
    @Temporal(TemporalType.TIME)
    private Date fajHoraSolicitud;
    @Basic(optional = false)
    @NotNull
    @Column(name = "faj_estado")
    private int fajEstado;
    @Basic(optional = false)
    @NotNull
    @Column(name = "faj_id_usuario_solicitud")
    private int fajIdUsuarioSolicitud;
    @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 128)
    @Column(name = "faj_nombre_usuario_solicitud")
    private String fajNombreUsuarioSolicitud;
    @Column(name = "faj_id_usuario_recepcion")
    private Integer fajIdUsuarioRecepcion;
    @Size(max = 128)
    @Column(name = "faj_nombre_usuario_recepcion")
    private String fajNombreUsuarioRecepcion;
    // @Max(value=?)  @Min(value=?)//if you know range of your decimal fields consider using these annotations to enforce field validation
    @Basic(optional = false)
    @NotNull
    @Column(name = "faj_total")
    private BigDecimal fajTotal;
    @Column(name = "faj_fecha_recepcion")
    @Temporal(TemporalType.DATE)
    private Date fajFechaRecepcion;
    @Column(name = "faj_hora_recepcion")
    @Temporal(TemporalType.TIME)
    private Date fajHoraRecepcion;
    @OneToMany(mappedBy = "farAjustes", fetch = FetchType.LAZY)
    private List<FarAjustesDetalle> farAjustesDetalleList;

    public FarAjustes() {
    }

    public FarAjustes(Integer fajId) {
        this.fajId = fajId;
    }

    public FarAjustes(Integer fajId, Date fajFechaSolicitud, Date fajHoraSolicitud, int fajEstado, int fajIdUsuarioSolicitud, String fajNombreUsuarioSolicitud, BigDecimal fajTotal) {
        this.fajId = fajId;
        this.fajFechaSolicitud = fajFechaSolicitud;
        this.fajHoraSolicitud = fajHoraSolicitud;
        this.fajEstado = fajEstado;
        this.fajIdUsuarioSolicitud = fajIdUsuarioSolicitud;
        this.fajNombreUsuarioSolicitud = fajNombreUsuarioSolicitud;
        this.fajTotal = fajTotal;
    }

    public Integer getFajId() {
        return fajId;
    }

    public void setFajId(Integer fajId) {
        this.fajId = fajId;
    }

    public Date getFajFechaSolicitud() {
        return fajFechaSolicitud;
    }

    public void setFajFechaSolicitud(Date fajFechaSolicitud) {
        this.fajFechaSolicitud = fajFechaSolicitud;
    }

    public Date getFajHoraSolicitud() {
        return fajHoraSolicitud;
    }

    public void setFajHoraSolicitud(Date fajHoraSolicitud) {
        this.fajHoraSolicitud = fajHoraSolicitud;
    }

    public int getFajEstado() {
        return fajEstado;
    }

    public void setFajEstado(int fajEstado) {
        this.fajEstado = fajEstado;
    }

    public int getFajIdUsuarioSolicitud() {
        return fajIdUsuarioSolicitud;
    }

    public void setFajIdUsuarioSolicitud(int fajIdUsuarioSolicitud) {
        this.fajIdUsuarioSolicitud = fajIdUsuarioSolicitud;
    }

    public String getFajNombreUsuarioSolicitud() {
        return fajNombreUsuarioSolicitud;
    }

    public void setFajNombreUsuarioSolicitud(String fajNombreUsuarioSolicitud) {
        this.fajNombreUsuarioSolicitud = fajNombreUsuarioSolicitud;
    }

    public Integer getFajIdUsuarioRecepcion() {
        return fajIdUsuarioRecepcion;
    }

    public void setFajIdUsuarioRecepcion(Integer fajIdUsuarioRecepcion) {
        this.fajIdUsuarioRecepcion = fajIdUsuarioRecepcion;
    }

    public String getFajNombreUsuarioRecepcion() {
        return fajNombreUsuarioRecepcion;
    }

    public void setFajNombreUsuarioRecepcion(String fajNombreUsuarioRecepcion) {
        this.fajNombreUsuarioRecepcion = fajNombreUsuarioRecepcion;
    }

    public BigDecimal getFajTotal() {
        return fajTotal;
    }

    public void setFajTotal(BigDecimal fajTotal) {
        this.fajTotal = fajTotal;
    }

    public Date getFajFechaRecepcion() {
        return fajFechaRecepcion;
    }

    public void setFajFechaRecepcion(Date fajFechaRecepcion) {
        this.fajFechaRecepcion = fajFechaRecepcion;
    }

    public Date getFajHoraRecepcion() {
        return fajHoraRecepcion;
    }

    public void setFajHoraRecepcion(Date fajHoraRecepcion) {
        this.fajHoraRecepcion = fajHoraRecepcion;
    }

    public List<FarAjustesDetalle> getFarAjustesDetalleList() {
        return farAjustesDetalleList;
    }

    public void setFarAjustesDetalleList(List<FarAjustesDetalle> farAjustesDetalleList) {
        this.farAjustesDetalleList = farAjustesDetalleList;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (fajId != null ? fajId.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof FarAjustes)) {
            return false;
        }
        FarAjustes other = (FarAjustes) object;
        if ((this.fajId == null && other.fajId != null) || (this.fajId != null && !this.fajId.equals(other.fajId))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "org.apli.haiam.ejb.entidades.FarAjustes[ fajId=" + fajId + " ]";
    }
    
}
